#include <iostream>

using namespace std;

struct Demo {};

int main(int argc, char **argv) {
  int i = 0;
  cout << "i: 0, sizeof(i++): " << sizeof(i++) << endl;
  cout << "after i: " << i << ",           i address: " << long(&i) << endl;

  int zeroArray[0];
  cout << "sizeof(zeroArray): " << sizeof(zeroArray)
       << ", zeroArray: " << long(zeroArray) << endl;

  int test;
  cout << "test address:                    " << long(&test) << endl;

  Demo a;
  Demo b;

  cout << "sizeof(Demo): " << sizeof(Demo) << endl;
  cout << "sizeof(a): " << sizeof(a) << ", a address: " << long(&a) << endl;
  cout << "sizeof(b): " << sizeof(b) << ", b address: " << long(&b) << endl;

  return 0;
}
